package com.itheima.d1_exception;

import java.util.Scanner;

/**
 * 目标：掌握自定义异常，以及异常的作用。
 * <p>
 * 自定义异常
 * 自定义运行时异常
 * 1 定义一个异常类继承RuntimeException.
 * 2 生成构造器。
 * 3 通过throw new 异常类(xxx)来创建异常对象并抛出。
 * 编译阶段不报错，提醒不强烈，运行时才可能出现！！
 * 自定义编译时异常
 * 1 定义一个异常类继承Exception.
 * 2 生成构造器。
 * 3 通过throw new 异常类(xxx)来创建异常对象并抛出。
 * 编译阶段就报错，提醒更加强烈！
 * 异常有什么作用
 * 检测系统出现问题关键的参考信息
 * 异常可以作为方法内部的一种特殊返回值,以便通知上层调用者底层的情况
 * <p>
 * 需求 : 定义方法接收年龄, 验证此年龄是否合法,如果年龄不合法抛出自定义异常
 */
public class ExceptionTest2 {
    public static void main(String[] args) {
        getAge();
    }

    public static void getAge(){
        Scanner sc = new Scanner(System.in);
        int age = sc.nextInt();
        if(age >= 0 && age <= 130){
            System.out.println("对啦");
        }else {
            System.out.println("错啦" );
            throw new Cuowu("哈哈");
        }
    }


}


